home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #2 / Amiga Plus CD - 1995 - No. 2.iso / internet / faq / englisch / majordomo < prev    next >
Encoding:
Text File  |  1995-04-11  |  31.0 KB  |  713 lines

  1. Version: $Id: majordomo-faq.html,v 1.40 1995/02/11 20:09:22 barr Exp barr $
  2. Archive-Name: mail/list-admin/majordomo-faq
  3. Posting-Frequency: monthly
  4.  
  5.    Table of Contents:
  6.     1. What is Majordomo and how can I get it?
  7.           + What is Majordomo?
  8.           + Where do I get it?
  9.           + How do I install it?
  10.           + How do I upgrade from an earlier release?
  11.           + Where do I report bugs or get help with Majordomo?
  12.           + Which is better, Majordomo or LISTSERV?
  13.     2. Problems setting up Majordomo
  14.           + What are the proper permissions and ownership of all
  15.             Majordomo files and directories?
  16.           + I get "Unknown mailer error" when majordomo runs
  17.           + I get "Permission denied at ..." when majordomo runs
  18.           + I get "shlock: open(">/some/path/...") when majordomo runs
  19.           + A file is visible via index, but can't 'get' it
  20.           + Majordomo seems to be taking many minutes to process commands
  21.           + I get an error "insecure usage" from the wrapper
  22.           + I get "majordomo: No such file or directory" from the wrapper
  23.           + I get an error "Can't locate majordomo.pl"
  24.           + I told my majordomo.cf where to archive the list, why isn't
  25.             it working?
  26.           + I'm accumulating lots of files called /tmp/resend.*.in and
  27.             .out,
  28.           + A list is visible via lists, but can't subscribe or 'get'
  29.             files
  30.           + I get "Out of Memory" when upgrading to 1.93
  31.           + I get lots of warnings and errors when trying to compile
  32.             1.93's wrapper
  33.     3. Setting up mailing lists and aliases
  34.           + How do I direct bounces to the right address?
  35.           + Semi-automated handling of bounced mail
  36.           + What's this Owner-List and List-Owner stuff? Why both?
  37.           + How should I configure resend for Reply-To headers?
  38.           + How can I hide lists so they can't be viewed by 'lists'?
  39.           + How can I restrict a list such that only subscribers can send
  40.             mail to the list?
  41.           + Can I have the list owner or approval person be changeable
  42.             without intervention from the Majordomo owner?
  43.           + What about all of these passwords starting in version 1.90?
  44.           + How do I tell majordomo to handle "get"-ing of binary files?
  45.           + How do I set up a moderated list?
  46.     4. Miscellaneous mailer and other problems
  47.           + Address with blanks are being treated separately
  48.           + Why aren't my digests going out?
  49.           + Why do I get duplicate mail sent to the list?
  50.             
  51.    This FAQ is Copyright 1994 by David Barr and The Pennsylvania State
  52.    University. This document may be reproduced, so long as it is kept in
  53.    its entirety and in its original format.
  54.    
  55.    Credits:
  56.    This FAQ originally written by Vincent D. Skahan. Many thanks to the
  57.    members of the majordomo-workers and majordomo-users mailing lists for
  58.    many of the questions and answers found in this FAQ. Thanks to
  59.    fen@comedia.com (Fen Labalme) for getting an HTML version started.
  60.    
  61.    You can get this FAQ by sending an e-mail message to
  62.    majordomo@pop.psu.edu with "get file majordomo-faq" in the body of
  63.    the message. You can get an HTML version on the World Wide Web at
  64.    http://www.pop.psu.edu/~barr/majordomo-faq.html. If you have any
  65.    questions or submissions regarding this FAQ, send them to
  66.    barr@pop.psu.edu (David Barr).
  67.    
  68.    
  69.      _________________________________________________________________
  70.    
  71.    
  72.    
  73. Section 1: What is Majordomo and how can I get it?
  74.  
  75.    
  76.    
  77.   WHAT IS MAJORDOMO?
  78.   
  79.    Majordomo is a program which automates the management of Internet
  80.    mailing lists. Commands are sent to Majordomo via electronic mail to
  81.    handle all aspects of list maintainance. Once a list is set up,
  82.    virtually all operations can be performed remotely, requiring no
  83.    intervention upon the postmaster of the list site.
  84.    
  85.      majordomo - n: a person who speaks, makes arrangements, or takes
  86.      charge for another. From latin "major domus" - "master of the
  87.      house". 
  88.      
  89.    Majordomo is written in Perl (at least 4.035, preferably 4.036). It is
  90.    also known to work under Perl 5, if you edit majordomo and resend and
  91.    look for instances of the "@" character inside text strings "@" Change
  92.    the "@" to "\@". This only happened with recent versions of Perl 5.
  93.    The same fix is also required if you want to run Majordomo under OSF/1
  94.    on the DEC AXP systems with Perl 4 or 5. [from Jim Reisert]
  95.    
  96.    Majordomo controls a list of addresses for some mail transport system
  97.    (like sendmail or smail) to handle. Majordomo itself performs no mail
  98.    delivery (though it has scripts to format and archive messages).
  99.    
  100.    Here's a short list of some of the features of Majordomo.
  101.    
  102.      * supports various types of lists, including moderated ones.
  103.      * List options can be set easily through a configuration file,
  104.        editable remotely.
  105.      * Supports archival and remote retrieval of messages.
  106.      * Supports digests.
  107.      * Written in Perl, - easily customizable and expandable.
  108.      * Modular in design.
  109.      * Includes support for FTPMAIL.
  110.        
  111.    
  112.    
  113.    
  114.    
  115.   WHERE DO I GET IT?
  116.   
  117.    
  118.    
  119.    Via anonymous FTP at:
  120.    
  121.    ftp://ftp.greatcircle.com/pub/majordomo/
  122.    
  123.    If you don't have Perl, you can get it from:
  124.    
  125.    ftp://prep.ai.mit.edu/pub/gnu/perl-4.036.tar.gz
  126.    
  127.    The FTPMAIL package can be found in
  128.    ftp://src.doc.ic.ac.uk/packages/ftpmail or any comp.sources.misc
  129.    archive (volume 37).
  130.    
  131.    
  132.    
  133.   HOW DO I INSTALL IT?
  134.   
  135.    Majordomo comes with a rather extensive README. Read this file
  136.    completely. This FAQ is meant to be a supplement to Majordomo's
  137.    documentation, not a replacement for it. If you have any questions
  138.    that this FAQ doesn't cover, chances are that it is covered in the
  139.    README or other documentation in the Majordomo distribution.
  140.    
  141.    
  142.    
  143.   HOW DO I UPGRADE FROM AN EARLIER RELEASE?
  144.   
  145.    Be sure to browse the "Changes" and "Changelog" files to get an idea
  146.    what has changed. There currently is no canned set of instructions for
  147.    upgrading from an earlier release. The most straightforward method is
  148.    to simply install the current release in a different directory, (with
  149.    the same list/archive/digest directories) and change the mail aliases
  150.    for each list to use the new Majordomo scripts as soon as you feel
  151.    comfortable with the new setup.
  152.    
  153.    
  154.    
  155.   WHERE DO I REPORT BUGS OR GET HELP WITH MAJORDOMO?
  156.   
  157.    If you need help, there is a mailing list
  158.    majordomo-users@greatcircle.com, which is frequented by lots of users
  159.    of Majordomo. Please don't send questions to me. Report bugs to
  160.    majordomo-workers@greatcircle.com. Be sure always to include which
  161.    version of Majordomo you are using. You should also include what
  162.    operating system you are using, what version of Perl, and what mailer
  163.    (sendmail, smail, etc) and version you are using, especially if you
  164.    can't get Majordomo to work at all. But first, you must have
  165.    thoroughly read the documentation to Majordomo and this FAQ.
  166.    
  167.    
  168.    
  169.   WHICH IS BETTER, MAJORDOMO OR LISTSERV?
  170.   
  171.    For a good comparison of various mailing list managers (MLM's)
  172.    there's a good review by Norm Aleks. Send mail to
  173.    "majordomo@pop.psu.edu" with the body "get file mlm-software-faq" in
  174.    the body of the message. This eventually will probably become its own
  175.    FAQ. Contact naleks@library.ummed.edu (Norm Aleks) for more
  176.    information. 
  177.    
  178. Section 2: Problems setting up Majordomo
  179.  
  180.    
  181.    
  182.   WHAT ARE THE PROPER PERMISSIONS AND OWNERSHIP OF ALL MAJORDOMO FILES AND
  183.   DIRECTORIES?
  184.   
  185.    By far the biggest problem in setting up Majordomo is getting all the
  186.    permissions and ownerships right. In part this is due to the security
  187.    model that Majordomo uses, and it's also due to the fact that it's
  188.    hard to automate this process. That's due to improve in future
  189.    releases.
  190.    
  191.    Majordomo works by using a small C "wrapper" which works by allowing
  192.    Majordomo to always run as the "majordom" user and group that you
  193.    create. (note that the wrapper may disappear in a future release,
  194.    since its function could safely be replaced by features found in Perl
  195.    5) Because Majordomo does not run with any "special" priviliges, and
  196.    because of the fact that Majordomo does a lot of .lock-style locking
  197.    (with shlock.pl), permissions on all files and directories are
  198.    critical to the correct operation of Majordomo.
  199.    
  200.     The wrapper
  201.     
  202.    The wrapper is compiled in one of two ways, by uncommenting the
  203.    correct section for your type of system. If you are unsure if your
  204.    system is POSIX or not, I would suggest you assume that your system is
  205.    not. If things don't work right, then try POSIX.
  206.    
  207.    
  208.    
  209.    If you are on a non-POSIX system, the wrapper must be both suid and
  210.    sgid (mode 6755) to whatever you defined your majordomo user and group
  211.    to be. It must not be setuid root!
  212.    
  213.    OR
  214.    
  215.    On a POSIX system the wrapper must be setuid root, and double-check
  216.    that W_UID and W_GID are the uid and gid of the majordomo user and
  217.    group. Don't set W_UID to be 0!
  218.    
  219.    Then compile the wrapper and install it. Do not install the wrapper on
  220.    an NFS filesystem with the "nosuid" option set. This will prevent the
  221.    wrapper from working.
  222.    
  223.     Majordomo files
  224.     
  225.    All files that majordomo creates will be mode 660, user "majordomo",
  226.    group "majordomo" if it is running correctly. The Log file that
  227.    majordomo writes logging information to must have this same permission
  228.    and ownership. Make sure any files you create by hand (.config,
  229.    subscription lists) have this same permission and ownership. (the can
  230.    also be mode 664 if you don't need the contents to be private to
  231.    others) The permissions/ownership of the Majordomo programs and
  232.    related files themselves aren't as crititcal, but the must all be
  233.    readable to the majordomo user/group. All Majordomo programs
  234.    (majordomo, resend, etc.) must have the execute bit set.
  235.    
  236.     Majordomo directories
  237.     
  238.    All directories under Majordomo's control ($homedir, $listdir,
  239.    $digest_work_dir, $filedir, as defined in your majordomo.cf) must be
  240.    mode 770 (or 775). They should be user and group owned by "majordom".
  241.    If want to allow a local user to be able to directly modify files or
  242.    for example copy files into a list's archive directory, you may make
  243.    the directory or file owned by that user. However directories and
  244.    files must be group-"majordom" writeable. 
  245.    
  246.   I GET "UNKNOWN MAILER ERROR" WHEN MAJORDOMO RUNS
  247.   
  248.    If something is wrong with your setup, the wrapper will often exit
  249.    with various return codes depending on what the problem is. In order
  250.    to really understand what is going on, look at the session transcript
  251.    further down in the bounce message to see the error which is returned
  252.    from the wrapper or from Majordomo. You should always see some sort of
  253.    error message.
  254.    
  255.    For information purposes, here are the current return codes from the
  256.    wrapper:
  257.      * 1: Usage error
  258.      * 2: Insecure usage (argument to wrapper can't contain a '/')
  259.      * 3: malloc() failed (out of memory)
  260.      * 4: set[ug]id() failed, compile with POSIX instead of BSD flags
  261.      * 5: execve() failed
  262.      * >5: return code from perl 
  263.        
  264.   I GET "PERMISSION DENIED AT ..." WHEN MAJORDOMO RUNS
  265.   
  266.   I GET "SHLOCK: OPEN(">/SOME/PATH/..." WHEN MAJORDOMO RUNS
  267.   
  268.   A FILE IS VISIBLE VIA INDEX, BUT CAN'T 'GET' IT
  269.   
  270.   MAJORDOMO SEEMS TO BE TAKING MANY MINUTES TO PROCESS COMMANDS
  271.    These are all symptoms of a permission or ownership problem. See the
  272.        previous question. The directory specified of any "shlock" errors
  273.        indicates a problem with that directory. A "get" problem means the
  274.        ownership or permission of archive directory for that list is
  275.        wrong. 
  276.        
  277.   I GET AN ERROR "INSECURE USAGE" FROM THE WRAPPER
  278.    The argument to ".../wrapper" should be simply "majordomo", not The
  279.        full path to majordomo or resend. "wrapper" has where to look
  280.        compiled in to it (the "W_BIN" setting in the Makefile) for
  281.        security reasons, and will not let you specify another directory.
  282.        
  283.        Your alias should say:
  284.        
  285.  
  286.     |"/path/to/majordomo/wrapper majordomo"
  287.    
  288.        
  289.        
  290.        
  291.   I GET "MAJORDOMO: NO SUCH FILE OR DIRECTORY" FROM THE WRAPPER
  292.    Make sure that the #! statement at the beginning of all the Majordomo
  293.        Perl executables contain the correct path to the perl program.
  294.        (the default is /usr/local/bin/perl) Make sure also that majordomo
  295.        and all the related scripts are in the W_BIN directory as defined
  296.        in the Makefile when you compiled the wrapper.
  297.        
  298.        
  299.        
  300.   I GET AN ERROR "CAN'T LOCATE MAJORDOMO.PL"
  301.    [from Brent Chapman]
  302.        Majordomo adds "$homedir" from the majordomo.cf file to the @INC
  303.        array before it goes looking for "majordomo.pl". Since it's not
  304.        finding it, I'd guess you have one of two problems:
  305.        
  306.        1) $homedir is set improperly (or not set at all; there is no
  307.        default) in your majordomo.cf file.
  308.        
  309.        2) majordomo.pl is not in $homedir, or is not readable.
  310.        
  311.        [from John P. Rouillard]
  312.        3) Note that the new majordomo.cf file checks to see if the
  313.        environment variable $HOME is set first, and uses that for
  314.        $homedir. Since the wrapper always sets HOME to the correct
  315.        directory, you get a nice default, unless you are running a
  316.        previously built wrapper, in which case you may get the wrong
  317.        directory.
  318.        
  319.        [from Andreas Fenner]
  320.        4) I had the same problem when I installed majordomo (1.62). My
  321.        Problem was a missing ";" in the majordomo.cf file - just in the
  322.        line before setting homedir .... My hint for you: Check your
  323.        perl-files carefully.
  324.        
  325.        
  326.        
  327.   I TOLD MY MAJORDOMO.CF WHERE TO ARCHIVE THE LIST, WHY ISN'T IT WORKING?
  328.    [From John Rouillard]
  329.        The archive variables in majordomo.cf aren't used to archive
  330.        anything. You have to use a separate archive program, or a
  331.        sendmail alias to do the archiving. The info is used to generate a
  332.        directory where the archive files are being placed by some other
  333.        mechanism.
  334.        
  335.        You are telling majordomo to look in the directory:
  336.  
  337.     /usr/local/mail/majordomo/archive/
  338.    for files that it should allow to be gotten using the get command.
  339.        
  340.        Majordomo comes with three different archive programs that run
  341.        under wrapper, that do various types of archiving. Look in the
  342.        contrib directory.
  343.        
  344.        
  345.        
  346.   I'M ACCUMULATING LOTS OF FILES CALLED /TMP/RESEND.*.IN AND .OUT WHAT ARE
  347.   THESE AND HOW CAN I GET RID OF THEM?
  348.    This is a known bug in Majordomo 1.92. There was a typo in resend on
  349.        line 347. Change the double-quotes to angle-brackets. (just like
  350.        the other calls to unlink())
  351.        
  352.        
  353.        
  354.   A LIST IS VISIBLE VIA LISTS, BUT CAN'T SUBSCRIBE OR 'GET' FILES
  355.    [From Brent Chapman]
  356.        I'll bet your list name has capital letters in it... Majordomo
  357.        smashes all list names to all-lower-case before attempting to use
  358.        the list name as part of a filename. So, while it's OK to
  359.        advertise (for instance) "Majordomo-Users" and have the headers
  360.        say "Majordomo-Users", the files and archive directory all need to
  361.        be "majordomo-users*".
  362.        
  363.        
  364.        
  365.   I GET "OUT OF MEMORY" WHEN UPGRADING TO 1.93
  366.    [summary of report from Matthew A. Braithwaite]
  367.        There appears to be a bug in error reporting in Majordomo 1.93.
  368.        Under certain circumstanses, if the directory containing your Log
  369.        file is not writeable by majordomo then it will get caught in an
  370.        infinite recursion, eventually allocating all the memory in the
  371.        system. The fix is to make sure that the directory containing your
  372.        Log file is user and group writeable, and user and group owned by
  373.        your majordomo user and group.
  374.        
  375.        
  376.        
  377.   I GET LOTS OF WARNINGS AND ERRORS WHEN TRYING TO COMPILE 1.93'S WRAPPER
  378.    You're probably trying to compile the wrapper using the default
  379.        Makefile on a non-POSIX system (like SunOS 4.x). As it says in the
  380.        Makefile, SunOS isn't POSIX -- you need to use the BSD rules. You
  381.        may still get one warning when compiling with BSD under SunOS,
  382.        just ignore it.
  383.          _____________________________________________________________
  384.        
  385.        
  386.        
  387.        
  388.        
  389. Section 3: Setting up mailing lists and aliases
  390.  
  391.    
  392.        
  393.   HOW DO I DIRECT BOUNCES TO THE RIGHT ADDRESS?
  394.    This was somewhat of a RTFM question. The answer is to use 'resend'
  395.        to your advantage. The following is an example of a sendmail alias
  396.        that I was using:
  397.  
  398.    sample: :include:/usr/local/mail/lists/sample
  399.    Whereas this example (from the 'sample.aliases' file distributed with
  400.        Majordomo) fixes the problem.
  401.  
  402.    sample: "|/usr/local/mail/majordomo/wrapper resend -p bulk -M 10000
  403.            -l Sample -f Owner-Sample -h GreatCircle.COM -s
  404.            sample-outgoing"
  405.    sample-outgoing: :include:/usr/local/mail/lists/sample
  406.    owner-sample: joe
  407.    See the 'resend.README' file for more info on resend's options.
  408.        
  409.        What this does is force outgoing mail to have the out-of-band
  410.        envelope FROM be "Owner-Sample@GreatCircle.COM", and thus all
  411.        bounces will be redirected to that address. (Users often see this
  412.        mirrored in the message body as the "From " or "Return-Path:"
  413.        header). 'resend' also inserts a "Sender:" line with the same
  414.        address to help people identify where it came from, but that
  415.        header is not used for the bounce address.
  416.        
  417.        If you are using sendmail v8.x, you don't have to use 'resend' to
  418.        do the same thing. You simply have to define an alias like this:
  419.  
  420. owner-sample: joe,
  421.    Note the trailing comma is necessary to prevent sendmail from
  422.        resolving the alias first before putting it in the header. Without
  423.        the comma, it will put "joe" in the envelope from instead of
  424.        "owner-sample". Either address will work, of course, but the
  425.        generic address is preferred should the owner ever change.
  426.        
  427.        
  428.        
  429.   SEMI-AUTOMATED HANDLING OF BOUNCED MAIL
  430.    [From John Rouillard]
  431.        Just create a mailing list called "bounces". I usually set mine up
  432.        as an auto list just to make life easier.
  433.        
  434.        All that "bounce" script does is create an email message to
  435.        majordomo that says:
  436.  
  437.    approve [passwd] unsubscribe [listname] [address]
  438.    approve [passwd] subscribe bounces [address]
  439.    The [address] and [listname], are given on the command line to bounce.
  440.        The address of the majordomo, and the passwords are retrieved from
  441.        the .majordomo file in your home directory.
  442.        
  443.        A sample .majordomo file might look like (shamelessly stolen from
  444.        the comments at the top of the bounce script):
  445.  
  446.    this-list       passwd1         Majordomo@This.COM
  447.    other-list      passwd2         Majordomo@Other.COM
  448.    bounces         passwd3         Majordomo@This.COM
  449.    bounces         passwd4         Majordomo@Other.COM
  450.    A command of "bounce this-list user@fubar.com" will mail the following
  451.        message to Majordomo@This.COM:
  452.  
  453.    approve passwd1 unsubscribe this-list user@fubar.com
  454.    approve passwd3 subscribe bounces user@fubar.com (930401 this-list)
  455.    while a command of "bounce other-list user@fubar.com" will mail the
  456.        following message to Majordomo@Other.COM:
  457.  
  458.    approve passwd2 unsubscribe other-list user@fubar.com
  459.    approve passwd4 subscribe bounces user@fubar.com (930401 this-list)
  460.    Note that the date and the list the user was bounced from are included
  461.        as a comment in the address used for the "subscribe bounces"
  462.        command.
  463.        
  464.        
  465.        
  466.   WHAT'S THIS OWNER-LIST AND LIST-OWNER STUFF? WHY BOTH?
  467.    [From David Barr]
  468.        The "standard" is spelled out in RFC 1211 - "Problems with the
  469.        Maintenance of Large Mailing Lists".
  470.        
  471.        It's here where the "owner-listname" and "listname-request"
  472.        concepts got their start. (well it was before this, but this is
  473.        where it was first spelled out)
  474.        
  475.        Personally, I don't use "listname-owner" anywhere. You don't
  476.        really have to put both, since the "owner" alias is usually only
  477.        for bounces, which you add automatically anyway with resend's "-f"
  478.        flag, or having Sendmail v8.x's "owner-listname" alias.
  479.        
  480.        (while I'm on the subject) The "-approval" is a Majordomo-ism, and
  481.        is only necessary if you want bounces and approval notices to go
  482.        to different mailboxes. (though you'll have to edit some code in
  483.        majordomo and request-answer if you want to get rid of the
  484.        -approval alias, since it's currently hardwired in)
  485.        
  486.        So, to answer your question, I'd say "no". You don't have to have
  487.        both. You should just have "owner-list".
  488.        
  489.        
  490.        
  491.   HOW SHOULD I CONFIGURE RESEND FOR REPLY-TO HEADERS?
  492.    Whether you should have a "Reply-To:" or not depends on the charter
  493.        of your list and the nature of its users. If the list is a
  494.        discussion list and you generally want replies to go back to the
  495.        list, you can include one. Some people don't like being told what
  496.        to do, and prefer to be able to choose whether to send a private
  497.        reply or a reply to the list just by using the right function on
  498.        their mail agent. Take note that if you do use a "Reply-To:", then
  499.        some mail agents make it much harder for a person on the list to
  500.        send a private reply.
  501.        
  502.        If you are using resend, use the '-r ' flag to set the Reply-To
  503.        field to the list, or use the 'reply_to' config keyword for 1.9x
  504.        or greater.
  505.        
  506.        
  507.        
  508.   HOW CAN I HIDE LISTS SO THEY CAN'T BE VIEWED BY 'LISTS'?
  509.    That is what advertise and noadvertise are for. The two keywords take
  510.        regular expressions that are matched against the from address of
  511.        the sender. A list display follows the rules:
  512.        
  513.          1. If the from address is on the list, it is shown.
  514.          2. If the from address matches a regexp in noadvertise (e.g.
  515.             /.*/) the list is not shown.
  516.          3. If the advertise list is empty, the list is shown unless 2
  517.             applies.
  518.          4. If the advertise list is non-empty, the from address must
  519.             match an address in advertise. Otherwise the list is not
  520.             shown. Rule 2 applies, so you could allow all hosts in
  521.             umb.edu except hosts in cs.umb.edu.
  522.    
  523.        
  524.        
  525.        
  526.   HOW CAN I RESTRICT A LIST SUCH THAT ONLY SUBSCRIBERS CAN SEND MAIL TO THE
  527.   LIST?
  528.    For pre-1.9x versions of majordomo, see the -I option to resend. For
  529.        1.9x this is the restrict_post keyword in the config file. Just
  530.        set it to the filename that holds the list of subscribers.
  531.        Unfortunately this means you probably will need help from the
  532.        Majordomo maintainer in setting it if you don't have access to the
  533.        host machine. This is due to be improved in a future release of
  534.        Majordomo.
  535.        
  536.        However, there is a problem with either of these methods.
  537.        Majordomo works by filtering the messages coming in through the
  538.        "listname" alias, doing its dirty work, then passing the resulting
  539.        message out to another alias you define like "listname-outgoing".
  540.        If you trust people to not send mail directly to the
  541.        "listname-outgoing" alias, then you'll be fine. If however you're
  542.        not trusting, there are several steps to make sure people don't
  543.        bypass the restrictions of the list.
  544.        
  545.        There are several methods. First you need to change your
  546.        "listname-outgoing" alias such that it is not obvious. Next, you
  547.        need to make it such that people can't find out what your
  548.        -outgoing alias is.
  549.        
  550.        You can use the "@filename" directive in resend to move the
  551.        command-line options of resend into a file readable only by the
  552.        majordomo user/group. This will make it such that you can't find
  553.        out the -outgoing address by connecting to your mailer and doing
  554.        an EXPN or VRFY, or even locally by looking at the aliases file or
  555.        NIS map.
  556.        
  557.        Another more direct approach is to simply disable EXPN or VRFY
  558.        altogether. See the documentation for your mailer on how to do
  559.        this.
  560.        
  561.        Finally it should be noted that it is impossible with any method
  562.        to prevent people from forging mail as someone on the list, and
  563.        sending to the list that way.
  564.        
  565.        
  566.        
  567.   CAN I HAVE THE LIST OWNER OR APPROVAL PERSON BE CHANGEABLE WITHOUT
  568.   INTERVENTION FROM THE MAJORDOMO OWNER?
  569.    Sure! Just make owner-listname and/or listname-approval be another
  570.        majordomo list. (probably hidden, for simplicity's sake)
  571.        
  572.        
  573.        
  574.   WHAT ABOUT ALL OF THESE PASSWORDS STARTING IN VERSION 1.90?
  575.    Think of three separate passwords:
  576.          1. A master password that can be used by both resend and
  577.             majordomo contained in [listname].passwd. To be used by the
  578.             master list manager when using writeconfig commands etc. This
  579.             allows someone who handles a number of mailing lists all
  580.             using the same password.
  581.          2. A password for the manager of this one list. The admin_passwd
  582.             can be used by subsidiary majordomo list maintainers.
  583.          3. A password for those concerned with the list content
  584.             (approve_passwd)
  585.    This way the administration and moderation functions can be split. The
  586.        original reason for maintaining [listname].passwd was to allow a
  587.        new config file to be put in if the config file was trashed and
  588.        the admin_password was obliterated, and may still be useful to
  589.        allow a single password to be used for admin functions by the
  590.        majordomo admin or some other "superadmin".
  591.        
  592.        Note that the admin passwd in the config file is not a file name,
  593.        but the password itself. This is the only way that the
  594.        list-maintainer could change the password since they wouldn't have
  595.        access to the file.
  596.        
  597.        
  598.        
  599.   HOW DO I TELL MAJORDOMO TO HANDLE "GET"-ING OF BINARY FILES?
  600.    Majordomo is not designed to be a general-purpose file-by-mail
  601.        system. If you want to do anything more than trivial "get"-ing of
  602.        text files (archives, etc) than you should get and install
  603.        ftpmail. Majordomo has hooks to allow transparent access to files
  604.        via ftpmail (see majordomo.cf).
  605.        
  606.        
  607.        
  608.   HOW DO I SET UP A MODERATED LIST?
  609.    First, you need to tell Majordomo that the list is moderated. In the
  610.        configuration file for the list, you set "moderated = yes".
  611.        
  612.        Any mail which is not "approved", gets bounced with "Approval
  613.        required". If the moderator wishes to approve the message for the
  614.        list, then you need to tag the message as "approved" and send it
  615.        to the list. The "approve" script which comes with Majordomo does
  616.        this for you. If you don't have access to "approve" (e.g. you're
  617.        not on a UNIX system with Perl), you have to do it by hand. The
  618.        easiest way is to re-mail the original message to the list, except
  619.        by adding the line "Approved: approval-password" to the very first
  620.        line of the body.
  621.          _____________________________________________________________
  622.        
  623.        
  624.        
  625.        
  626.        
  627. Section 4: Miscellaneous mailer problems
  628.  
  629.    
  630.        
  631.   ADDRESS WITH BLANKS ARE BEING TREATED SEPARATELY
  632.    If a subscriber to the list is
  633.        John Doe <jdoe@node.com>
  634.        
  635.         it gets treated these as the three addresses:
  636.        John
  637.        Doe
  638.        <jdoe@node.com>
  639.        
  640.        [From Alan Millar]
  641.        Majordomo does not treat these as three addresses. Apparently your
  642.        mailer does.
  643.        
  644.        Remember that all Majordomo does is add and remove addresses from
  645.        a list. Majordomo does not interpret the contents of the list for
  646.        message distribution; the system mailer (such as sendmail) does.
  647.        
  648.        I'm using SMail3 instead of sendmail, and it has an alternative
  649.        (read "stupid") view of how mixed angle-bracketed and
  650.        non-angle-bracketed addresses should be interpreted. I found that
  651.        putting a comma at the end of each line was effective to fix the
  652.        problem, and I got to keep my comments. So I patched Majordomo to
  653.        add the comment at the end of each address it writes to the list
  654.        file.
  655.        
  656.        You can also add the $listname.strip option so that none of the
  657.        addresses are angle-bracketed. (the "strip" config option for
  658.        1.90)
  659.        
  660.        
  661.        
  662.   WHY AREN'T MY DIGESTS GOING OUT?
  663.    
  664.  
  665. >I'm not sure how to set up the digest feature of majordomo 1.92 to send
  666. >digests out.  Currently, it is digesting incoming mail, but that's all it's
  667. >doing.
  668.    [from John Rouillard]
  669.  
  670.   echo mkdigest [digest-name] [digest-password] | mail majordomo@...
  671.    This will force a digest to be created. Or you can set the max size in
  672.        the digest list config file down low, and force automatic
  673.        generation. There are some patches for 1.92 that will allow other
  674.        ways of specifying automatic digest sending. The patch is in the
  675.        contrib directory.
  676.        
  677.        
  678.        
  679.   WHY DO I GET DUPLICATE MAIL SENT TO THE LIST?
  680.    I've you're running MMDF, read on: [From Gunther Anderson]
  681.        Well, I can tell you what happened to me recently. We use MMDF
  682.        here, which certainly colors the picture a little. What was
  683.        happening here was that MMDF was verifying the validity of the
  684.        whole mailing list before returning from the Submit call. The
  685.        thing calling the Submit would time out and close, but the Submit
  686.        itself would still be running somewhere. The calling routine would
  687.        believe that the message had failed in its delivery, but the
  688.        Submit would eventually succeed. The calling process would try
  689.        again some time later. This, of course, is bad. The larger the
  690.        list got, the more addresses there were to verify (verification
  691.        was really just a DNS search on the target machine name), the more
  692.        likely, under load, that the message would duplicate. We finally
  693.        got so large, with so many international addresses (which seem to
  694.        timeout on DNS queries much more ofen than US addresses) that we
  695.        were always duplicating. Infinitely (until I killed the original
  696.        submitter).
  697.        
  698.        The solution for us was MMDF-specific. We used a different channel
  699.        for submission and delivery, one which deliberately doesn't verify
  700.        the addresses before accepting a job. We used the list-processor
  701.        channel, and only had to check that the listname-request name was
  702.        set properly, because list-processor insists on making
  703.        listname-request the envelope "From " header name.
  704.        
  705.        If you're running Sendmail, this is more rare. There have been
  706.        unconfirmed reports that on some systems having the queue process
  707.        interval set too short can cause problems, even though sendmail is
  708.        supposed to handle this. Workarounds are to increase your queue
  709.        process interval (-q flag), or decrease the interval between queue
  710.        checkpoints (OC flag in sendmail.cf).
  711.        
  712.        [ Please let me know if you have any more information --ed ]
  713.